package cn.com.petrochina.lpm3.vo.mdm;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NonNull;

@Data
public class Query {

    public Query createQuery(@NonNull String queryType) {
        Query query = new Query();
        query.setQueryType(queryType);
        return query;
    }

    //固定值：MDM，必输值
    @JsonProperty("AccessType")
    private String accessType = "MDM";

    //服务接入密匙（第一次查询需要邮件申请，在MDM生成密钥），必输值
    @JsonProperty("AccessKey")
    private String accessKey = "C6BDF6F65F3845DA9085E9AE5790B494";

    //固定值：Z005，必输值
    @JsonProperty("QueryType")
    private String queryType = "Z001";

    //开始取数据行，输入0取全量数据，必输值
    @JsonProperty("Start_Rows")
    private String startRows = "0";

    //取数条目数量，输入0取全量数据，必输值
    @JsonProperty("Fetch_Rows")
    private String fetchRows = "0";

    @Data
    public static class QueryCountry extends Query {
        //编码查询，精确查询，非必填
        @JsonProperty("CodeQuery")
        private String codeQuery;

        //直辖市中文查询，非必填
        @JsonProperty("TextCNQuery")
        private String textCNQuery;

        @JsonProperty("TextENQuery")
        private String textENQuery;
    }
}

